#ifndef QTDEMO_H
#define QTDEMO_H

#include <QWidget>
#include <QVBoxLayout>
#include <QWebEngineView>
#include <QCefView.h>
#include <QKeyEvent>

namespace Ui {
class QtDemo;
}

class QtDemo : public QWidget
{
    Q_OBJECT

public:
    explicit QtDemo(QWidget *parent = 0);
    void ButtonFunc();
    void QCedButtonFunc();
    void InitUi();
    void DisplayWeb();
    void QCefDisplay();
    void OpenOuterWeb();
    void ShowWebVersion();
    ~QtDemo();

protected:
    // 重写键盘事件处理函数
    void keyPressEvent(QKeyEvent *event) override;

    void setZoomFactor(double zoomFactor);
    void zoomIn();
    void zoomOut();
    void resetZoom();




private:
    Ui::QtDemo *ui;
    double display_ratio;
    QWebEngineView *m_webView;
    QVBoxLayout *m_layout;
    QCefView *m_cefView;

    // 添加缩放相关成员变量
        double m_currentZoomFactor = 1.0; // 当前缩放比例
        const double ZOOM_STEP = 0.1;     // 每次缩放步长
        const double MIN_ZOOM = 0.25;     // 最小缩放比例
        const double MAX_ZOOM = 3.0;      // 最大缩放比例
};

#endif // QTDEMO_H
